package cn.assumejson.springframework.context.context.annotation;

import cn.assumejson.springframework.beans.factory.support.BeanDefinitionRegistry;

/**
 * 解析@Import 注解，用于该注解的回调
 *
 * @author Mr. Li
 * @version 1.0
 * @since 1.0 2021/12/6 10:54
 */
public interface ImportBeanDefinitionRegistrar {
    /**
     * Register bean definitions as necessary based on the given annotation metadata of
     * the importing {@code @Configuration} class.
     * <p>Note that {@link cn.assumejson.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor}
     * types may <em>not</em> be
     * registered here, due to lifecycle constraints related to {@code @Configuration}
     * class processing.
     *
     * @param registry current bean definition registry
     */
    void registerBeanDefinitions(BeanDefinitionRegistry registry);
}
